Method for providing virtual object and electronic device therefor

ABSTRACT

An electronic device and method for providing a virtual object are disclosed, including a processor and memory storing program instructions executable by the processor to implement the method, which includes receiving a request for a virtual object including a plurality of present conditions, searching a database for the virtual object by comparing the received plurality of present conditions to a plurality of condition sets, each set associated with at least one virtual object stored in the database; and when none of the plurality of condition sets matches all of the received plurality of present conditions, detecting a partially matching condition set matching at least one of the received plurality of present conditions and providing a partially matching virtual object corresponding to the partially matching condition set.

CLAIM OF PRIORITY

This application claims the priority under 35 U.S.C. § 119(a) to KoreanApplication Serial No. 10-2014-0126591, which was filed in the KoreanIntellectual Property Office on Sep. 23, 2014, the entire content ofwhich is hereby incorporated by reference.

TECHNICAL FIELD

Various embodiments of the present disclosure relate to an electronicdevice and a method for providing a virtual object in an electronicdevice.

BACKGROUND

Augmented reality (AR) refers to one type of virtual reality, whichinvolves a combination of the real word combined or overlaid by avirtual world having additional display elements or information. Usingthis complimenting of the real world with a virtual world, informationneeded in the real environment may be additionally provided within avirtual environment utilizing generated computer graphics.

Development of mobile devices (e.g. smartphones, tablet PCs, wearabledevices, etc.) has expanded the range of augmented reality technology tovarious services, including education, gaming, navigation, advertising,or blogging.

SUMMARY

Augmented reality involves displaying a virtual object in some relationto a real-world object, with the virtual object providing additionalinformation for the real object. Information related to the virtualobject can be displayed in some cases when predetermined conditions aresatisfied. When a change occurs to at least one condition for providingor otherwise generating a virtual object (e.g. when a locationalposition is changed or when an image is changed), in some cases, adesired virtual object fails to be provided or generated.

Various embodiments of the present disclosure may provide an electronicdevice capable of providing a virtual object, which is overlaid on areal object, in response to a change in present conditions, and a methodimplementing the same in an electronic device.

In one aspect of this disclosure, a method for providing a virtualobject includes receiving a request for a virtual object including aplurality of present conditions, searching a database for the virtualobject by comparing the received plurality of present conditions to aplurality of condition sets, each set associated with at least onevirtual object stored in the database, and when none of the plurality ofcondition sets matches all of the received plurality of presentconditions, detecting a partially matching condition set matching atleast one of the received plurality of present conditions and providinga partially matching virtual object corresponding to the partiallymatching condition set.

In another aspect of this disclosure, an electronic device for providinga virtual object, including a processor configured to receive a requestfor the virtual object including a plurality of present conditions,execute a search for the virtual object to by comparing the plurality ofpresent conditions to stored sets of conditions each associated with astored virtual object, and when no virtual object is associated with aset matching all of the plurality of conditions, detect a partiallymatching virtual object associated with a set matching at least onecondition of the plurality of conditions and provide the partiallymatching virtual object.

In another aspect of this disclosure, a method for providing a virtualobject in an electronic device includes requesting a virtual object bytransmitting a plurality of present conditions detected by theelectronic device to a server, receiving a virtual object from theserver, and generating and displaying the received virtual object as animage on a screen of the electronic device, wherein the received virtualobject is a virtual object associated with a set of conditions whichmatches the plurality of present conditions, and when no virtual objectis associated with the set of conditions matching all of the pluralityof present conditions, a partially matching virtual object associatedwith a set of conditions satisfying at least one condition of theplurality of present conditions is received from the server.

In another aspect of this disclosure, a virtual object providing serverincludes a virtual object registering unit configured to store at leastone virtual object for augmented reality and associated with a pluralityof conditions, a virtual object requesting unit configured to receive aplurality of present conditions from an electronic device and request asearch for a matching virtual object, and an object request processingunit configured to search for the matching virtual object matching thereceived plurality of present conditions from among a plurality ofstored virtual objects, and when no virtual object satisfies all of thereceived plurality of present conditions, transmit to the electronicdevice a partially matching virtual object which matches at least one ofthe received plurality of present conditions.

According to various embodiments of the present disclosure, when aplurality of present conditions is received and compared to sets ofstored conditions to detect a matching virtual object, and not virtualobject matches all of the plurality of present conditions, a partiallymatching virtual object can be displayed on the basis of matching someof the plurality of present conditions, thereby providing the clientwith more diversified pieces of information.

In addition, according to various embodiments of the present disclosure,when some conditions among complex conditions for displaying a virtualobject are satisfied, an individualized service can be provided on thebasis of the satisfied conditions.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will be more apparent from the following detaileddescription taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 illustrates a network environment including an electric deviceaccording to various embodiments of the present disclosure;

FIG. 2 illustrates a block diagram regarding an electric deviceaccording to various embodiments of the present disclosure;

FIG. 3 is a flowchart illustrating a virtual object providing procedureaccording to various embodiments of the present disclosure;

FIG. 4 is a flowchart illustrating a partially matching virtual objectsetting procedure according to various embodiments of the presentdisclosure;

FIG. 5 is a diagram illustrating virtual objects registered in adatabase according to various embodiments of the present disclosure;

FIG. 6 is a diagram illustrating a partially matching virtual objectconfiguration according to various embodiments of the presentdisclosure;

FIG. 7 is a diagram illustrating an example of partially matchingvirtual object provision according to various embodiments of the presentdisclosure;

FIG. 8 is a diagram illustrating an example of partially matchingvirtual object provision according to various embodiments of the presentdisclosure;

FIG. 9 is a diagram illustrating an example of matching a real objectand a virtual object according to various embodiments of the presentdisclosure;

FIG. 10 illustrates a network environment including electric devices anda virtual object provision server according to various embodiments ofthe present disclosure;

FIG. 11 is a block diagram illustrating a virtual object provisionserver according to various embodiments of the present disclosure; and

FIG. 12 is a block diagram illustrating a detailed configuration of anelectric device according to various embodiments of the presentdisclosure.

DETAILED DESCRIPTION

Hereinafter, the present disclosure will be described with reference tothe accompanying drawings. The present disclosure may have variousembodiments, and modifications and changes may be made therein.Therefore, the present disclosure will be described in conjunction withparticular embodiments shown in the accompanying drawings. However, itshould be understood that there is no intent to limit the presentdisclosure to the particular forms disclosed herein; rather, the presentdisclosure should be construed to cover all modifications, equivalents,and/or alternatives falling within the ambit of the disclosure. In thedescription of the drawings, identical or similar reference numerals areused to designate identical or similar elements.

In the present disclosure, the expression “include” or “may include”refers to existence of a corresponding function, operation, or element,and does not limit one or more additional functions, operations, orelements. Also, as used herein, the terms “include” and/or “have” shouldbe construed to denote a certain feature, number, step, operation,element, component or a combination thereof, and should not be construedto exclude the existence or possible addition of one or more otherfeatures, numbers, steps, operations, elements, components, orcombinations thereof.

In the present disclosure, the expression “or” includes any or allcombinations of words enumerated together. For example, the expression“A or B” may include A, may include B, or may include both A and B. Forexample, the expression “A or B” may include A, may include B, or mayinclude both A and B.

Although the expressions such as “first” and “second” in the presentdisclosure can modify various constituent elements of the presentdisclosure, they do not limit the constituent elements. For example, theabove expressions do not limit the sequence and/or importance of thecorresponding elements. The above expressions may be used merely for thepurpose of distinguishing one element from the other elements. Forexample, a first user device and a second user device indicate differentuser devices although both of them are user devices. For example, afirst element may be termed a second element, and similarly, a secondelement may be termed a first element without departing from the scopeof the present disclosure.

When an element is referred to as being “coupled” or “connected” to anyother element, it should be understood that not only the element may bedirectly couple4d or connected to the other element, but also a thirdelement may be interposed therebetween. Contrarily, when an element isreferred to as being “directly coupled” or “directly connected” to anyother element, it should be understood that no element is interposedtherebetween.

The terms used herein are used only to describe particular embodiments,and are not intended to limit the present disclosure. As used herein,the singular forms may include the plural forms as well, unless thecontext clearly indicates otherwise.

Unless defined otherwise, all terms used herein, including technical andscientific terms, have the same meaning as those commonly understood bya person of ordinary skill in the art to which the present disclosurepertains. Such terms as those defined in a generally used dictionary areto be interpreted to have the meaning equal to the contextual meaning inthe relevant field of art, and are not to be interpreted to have idealor excessively formal meaning unless clearly defined in the presentdisclosure.

An electronic device according to the present disclosure may be, but isnot limited to, a device including a communication function. The entity,for example, may include at least one of a smart phone, a tabletpersonal computer (PC), a mobile phone, a video phone, an e-book reader,a desktop PC, a laptop PC, a netbook computer, a personal digitalassistant (PDA), a portable multimedia player (PMP), an MP3 player, amobile medical device, a camera, or a wearable device (e.g., ahead-mounted-device (HMD) such as electronic glasses, electronicclothes, an electronic bracelet, an electronic necklace, an electronicappcessory, an electronic tattoo, or a smartwatch).

According to some embodiments, the electronic device may be a smart homeappliance with a communication function. The smart home appliance as anexample of the electronic device may include at least one of, forexample, a television, a Digital Video Disk (DVD) player, an audiosystem, a refrigerator, an air conditioner, a vacuum cleaner, an oven, amicrowave oven, a washing machine, an air cleaner, a set-top box, a TVbox (e.g., Samsung HomeSync™, Apple TV™, or Google TV™), a game console,an electronic dictionary, an electronic key, a camcorder, or anelectronic picture frame.

According to some embodiments, the entity may include at least one ofvarious medical appliances (e.g., magnetic resonance angiography (MRA),magnetic resonance imaging (MRI), computed tomography (CT), andultrasonic machines), navigation equipment, a global positioning system(GPS) receiver, an event data recorder (EDR), a flight data recorder(FDR), an in-vehicle infotainment device, electronic equipment for ships(e.g., ship navigation equipment and a gyrocompass), avionics, securityequipment, a vehicle head unit, an industrial or home robot, anautomatic teller machine (ATM) of a banking system, or a point of sales(POS) of a store.

According to some embodiments, the electronic device may include atleast one of a part of furniture or a building/structure having acommunication function, an electronic board, an electronic signaturereceiving device, a projector, and various kinds of measuringinstruments (e.g., a water meter, an electric meter, a gas meter, aradio wave meter, and the like). The electronic device according to thepresent disclosure may be a combination of one or more of theaforementioned various devices. Also, the electronic device according tothe present disclosure may be a flexible device. Further, it is obviousto those skilled in the art that the electronic device according to thepresent disclosure is not limited to the aforementioned devices.

Various embodiments of the present disclosure provide an electronicdevice for providing a virtual object added to a real object toimplement augmented reality, a method for providing a virtual object,etc. According to various embodiments of the present disclosure, avirtual object can be provided on the basis of at least one conditionsatisfied, even when some of complex conditions for providing a virtualobject are not satisfied.

In the following description, a “virtual object” refers to informationgenerated to correspond to a real recognition object in terms of atleast one condition, and the corresponding information can be activatedunder the same condition and provided to the client. For example, thevirtual object can be implemented in any type, such as a text, an image,a moving image, an animation, a sound, a background, a word balloon, amap, a figure, etc. In addition, when at least one of a plurality ofconditions corresponding to the virtual object according to variousembodiments of the present disclosure has been changed, thecorresponding virtual object is referred to as a “partially matchingvirtual object (which may also be referred to as a ghost clue for thesake of convenience, for example)”.

According to various embodiments of the present disclosure, when thereexist conditions satisfied, among a plurality of conditionscorresponding to a virtual object, other than conditions changed, thevirtual object may also be provided in a different type of informationaccording to various embodiments described later. For example, accordingto various embodiments of the present disclosure, even when some ofcomplex conditions for providing a virtual object are changed, thevirtual object can be displayed in the existing type or in a changedtype on the basis of the remaining conditions unchanged. In addition,even when some conditions described above are changed, a part of thevirtual object, which satisfies the conditions prior to change, may alsobe provided.

Conditions for generating or requesting a virtual object according tovarious embodiments of the present disclosure may include thegeographical position of an electronic device that displays the virtualobject, the aiming direction, the aiming range, the aiming target, theaiming time, the degree of exposure to a different client, environmentalconditions such as weather, client gestures, etc., but conditionsaccording to embodiments of the present disclosure are not limitedthereto. The kind of conditions for generating or requesting a virtualobject may be set by the system in advance or set by the client'sselection.

It will be assumed in the following description of various embodimentsof the present disclosure, to aid understanding, that the virtual objector condition is mainly an image or a picture, but embodiments of thepresent disclosure are not limited to the image or picture, but mayinclude all conditions which can be recognized by the device or whichare directly inputted by the client, such as an image, a picture, asound, a smell, a touch, a temperature, a position, etc., as describedabove.

Hereinafter, the structure of a device according to various embodimentsof the present disclosure will be described with reference to FIGS. 1and 2, and a procedure according to various embodiments of the presentdisclosure will then be described in detail with reference to FIGS. 3and 4.

First, an electronic device according to various embodiments will bedescribed with reference to the accompanying drawings. The term “client”used in the various embodiments may refer to a person or a device usingthe electronic device.

FIG. 1 illustrates a network environment 100 including an electronicdevice 101 according to various embodiments. Referring to FIG. 1, theelectronic device 101 may include at least one from among a bus 110, aprocessor 120, a memory 130, an input/output interface 140, a display150, a communication interface 160, and a virtual object processingmodule 170.

The bus 110 may be a circuit configured to connect the above-describedcomponents with one another and to transfer a communication (forexample, control messages) among the above-described components.

The processor 120 may receive instructions from other componentsdescribed above (for example, the memory 130, the input/output interface140, the display 150, the communication interface 160, the virtualobject processing module 170 or the like) through, for example, the bus110, then decode the received instructions and perform calculation ordata processing according to the decoded instructions. In addition, theprocessor 120 may include all or part of the functions of the virtualobject processing module 170. For example, functions according tovarious embodiments of the present disclosure may be processed by thevirtual object processing module 170, may be processed by the processor120, or may be processed by interworking between the virtual objectprocessing module 170 and the processor 120.

The memory 130 may store commands or data received from or generated bythe processor 120 or other components (for example, the input/outputinterface 140, the display 150, the communication interface 160, or thevirtual object processing module 170). The memory 130 may includeprogramming modules, for example, a kernel 131, a middleware 132, anApplication Programming Interface (API) 133, or an application 134. Eachof the programming modules described above may be configured bysoftware, firmware, and hardware, or a combination of at least twothereof.

The kernel 131 may control or manage system resources (for example, thebus 110, the processor 120, the memory 130, or the like) which are usedin performing operations or functions implemented by the remainingprogramming modules, for example, the middleware 132, the API 133 or theapplication 134. Furthermore, the kernel 131 may provide an interfacethrough which the middleware 132, the API 133, or the application 134may access individual components of the electronic device 101 to controlor manage them.

The middleware 132 may perform a relay function to allow the API 133 orthe application 134 to communicate with the kernel 131 to exchange data.Further, in relation to requests for an operation received from theapplication 134, the middleware 132 may control (e.g., a scheduling or aload-balancing) the requests by using, for example, a method ofdetermining a sequence for using system resources (e.g., the bus 110,the processor 120, the memory 130, or the like) of the electronic device101 with respect to at least one application among the applications 134.

The API 133 is an interface by which the application 134 controlsfunctions provided from the kernel 131 or the middleware 132, and mayinclude, for example, at least one interface or function (for example,instructions) for a file control, a window control, an image processing,a text control, or the like.

According to various embodiments, the application 134 may include aSMS/MMS application, an email application, a calendar application, analarm application, a health care application (for example, applicationmeasuring a quantity of exercise or blood sugar) or an environmentinformation application (for example, application providing informationon atmospheric pressure, humidity or temperature). Additionally oralternatively, the application 134 may be an application related to theexchange of information between the electronic device 101 and anexternal electronic device (for example, an electronic device 104). Theapplication related to the information exchange may include, forexample, a notification relay application for transferring particularinformation to the external electronic device or a device managementapplication for managing the external electronic device.

For example, the notification relay application may include a functionof transmitting notification information generated by anotherapplication (for example, the SMS/MMS application, the emailapplication, the health care application or the environment informationapplication) of the electronic device 101 to the external electronicdevice (for example, the electronic device 104). Additionally oralternatively, the notification relay application may receivenotification information from, for example, an external electronicdevice (for example, the electronic device 104), and provide the same toa client. The device management application, for example, may manage(for example, install, delete, or update) at least some functions (forexample, turning external electronic device (or some components) on oroff or adjusting the brightness (or resolution) of a display) of anexternal electronic device (for example, the electronic device 104) thatcommunicates with the electronic device 101, applications performed inthe external electronic device, or services (for example, a phone callservice, or a messaging service) provided by the external electronicdevice.

According to various embodiments, the application 134 may include anapplication designated according to a property (e.g., a kind of theelectronic device) of the external electronic device (e.g., theelectronic device 104). For example, in a case where the externalelectronic device is an MP3 player, the application 134 may include anapplication related to the reproduction of music. Similarly, when theexternal electronic device is a mobile medical device, the application134 may include an application related to the health care. According toan embodiment, the application 134 may include at least one of anapplication designated to the electronic device 101 and an applicationreceived from an external electronic device (for example, a server 106or the electronic device 104).

The input/output interface 140 may transmit a command or data input fromthe client through an input/output device (for example, sensor,keyboard, or touch screen) to the processor 120, the memory 130, thecommunication interface 160, or the virtual object processing module 170through, for example, the bus 110. For example, the input/outputinterface 140 may provide, to the processor 120, data regarding theclient's touch which is input through the touch screen. In addition, theinput/output interface 140 may output instructions or data received fromthe processor 120, the memory 130, the communication interface 160, orthe virtual object processing module 170 through the bus 110, forexample, through the input/output device (e.g., speaker or display). Forexample, the input/output interface 140 may output voice data processedby the processor 120 to the client through the speaker.

The display 150 may display various pieces of information (for example,multimedia data or text data) to the client.

The communication interface 160 may connect communication between theelectronic device 101 and the external device (for example, theelectronic device 104 or the server 106). For example, the communicationinterface 160 may be connected with a network 162 through wirelesscommunication or wired communication to communicate with the externalelectronic device. The wireless communication may include at least oneof, for example, a Wireless Fidelity (Wi-Fi), a Bluetooth (BT), a NearField Communication (NFC), a Global Positioning System (GPS) or acellular communication (for example, LTE, LTE-A, CDMA, WCDMA, UMTS,WiBro, GSM or the like). The wired communication may include at leastone of, for example, Universal Serial Bus (USB), High DefinitionMultimedia Interface (HDMI), Recommended Standard 232 (RS-232), or PlainOld Telephone Service (POTS).

According to an embodiment, the network 162 may be a telecommunicationsnetwork. The telecommunications network may include at least one of acomputer network, the Internet, the Internet of things, and a telephonenetwork. According to an embodiment, a protocol (for example, atransport layer protocol, a data link layer protocol, or a physicallayer protocol) for the communication between the electronic device 101and the external device may be supported by at least one of theapplication 134, the application programming interface 133, themiddleware 132, the kernel 131, and the communication interface 160.

The electronic device 101 is illustrated in FIG. 1 as including thecommunication interface 160 to communicate with the external electronicdevice 104, the server 106, or the like through the network 162;however, according to another embodiment of the present disclosure, theelectronic device 101 may be implemented to operate independently in theelectronic device 101 without a separate additional communicationfunction.

According to various embodiments of the present disclosure, the virtualobject processing module 170 may process at least a part of informationacquired from other components (e.g. the processor 120, the memory 130,the input/output interface 140, the communication interface 160, on thelike) according to various embodiments of the present disclosure andprovide the client with the same in various methods. For example, theelectronic device 101 may store a specific object as a virtual object inconformity with at least one condition and, when at least one pre-storedcondition is received, may output a virtual object, among the storedvirtual objects, which conforms to the received condition. In addition,the virtual object may be added to a real image, which is being watchedby the client, and displayed on one screen so that additionalinformation regarding the real environment is provided through thevirtual object. Additional information regarding the virtual objectprocessing module 170 is provided below with reference to FIG. 2.

FIG. 2 is a block diagram of a virtual object processing module 170 ofan electronic device (e.g., electronic device 101) according to variousembodiments of the present disclosure.

The virtual object processing module 170 as depicted may include, forexample, a virtual object registering unit 210, a virtual objectrequesting unit 220, an object request processing unit 230, and apartially matching virtual object setting unit 240. In addition,according to an embodiment of the present disclosure, the virtual objectprocessing module 170 may further include one or more databases, such asthe a virtual object database 250 and a condition information database260.

The virtual object registering unit 210 may store at least one virtualobject to be generated within an augmented reality environment when agiven plurality of conditions is satisfied in a database. Each of thevirtual objects to be registered may be stored in the virtual objectdatabase 250 accompanied by a plurality of conditions (e.g., two or moreconditions) designated thereto. According to various embodiments of thepresent disclosure, the plurality of conditions for each virtual objectmay also be separately stored in the condition information database 260and managed so as to set or define partially matching virtual objects.According to various embodiments of the present disclosure, at least oneof the virtual object, the partially matching virtual object, and thecondition information may be data set (or customized) for individualusers, and the data may be thus used to generate a virtual object or apartially matching virtual object when conditions registered for eachindividual are detected, thereby facilitating a personally customizedaugmented reality service.

The virtual object registering unit 210 may receive and register acorresponding virtual object and an attendant plurality of conditions inresponse to a request for registering a virtual object.

The virtual object requesting unit 220 may receive a plurality ofconditions and, when a virtual object matching the plurality ofconditions is requested, transmit a request for the matching virtualobject to the object request processing unit 230. The plurality ofconditions requested may be stored in the condition information database260.

The object request processing unit 230 may include a condition comparingunit 231, a matching object transmitting unit 232, a partial matchingprocessing unit 233, etc. The condition comparing unit 231 comparesconditions, the conditions having been received according to the requestfor a virtual object through the virtual object requesting unit 220. Theconditions are compared with a plurality of conditions corresponding toeach virtual object stored in the virtual object database 250.

The matching object transmitting unit 232 transmits the matching virtualobject which is a virtual objecting having all associated conditions ofcoinciding with the received conditions, as detected by comparison viathe condition comparing unit 231.

In some cases, no fully matching virtual object is detected. That is,there is no virtual object having all associated conditions coincidingwith the received plurality of conditions in the virtual object database250, as detected by the comparison executed by the condition comparingunit 231. In these cases, it may be determined whether a virtual objectexists which satisfies at least one condition. When a virtual objectsatisfying at least one condition is determined to exist, the partiallymatching processing unit 233 may output the detected object as apartially matching virtual object according to various embodiments ofthe present disclosure. In addition, when the plurality of conditionsreceived satisfy a preset or predefined partially matching condition,preset partially matching processing may be performed according toanother embodiment of the present disclosure. Other embodiments directedto this concept will be described further below.

As described above, the partially matching virtual object setting unit240 may set a virtual object as a partially matching virtual object whenit satisfies at least one specific condition (rather than the full setof specific conditions). In one example, having a specificnon-coinciding condition are repeated over a predetermined period oftime, these conditions being among a plurality of conditions matchingwith a respective plurality of virtual objects stored in the virtualobject database 250. The corresponding virtual object may then be set asa partially matching virtual object. Accordingly, when the plurality ofconditions received satisfy the set partially matching condition of thepartially matching virtual object, the partially matching processingunit 233 may output or transmit the corresponding partially matchingvirtual object.

Accordingly, even when a specific condition is changed (e.g., change ofa position or an image, among a plurality of conditions) so that novirtual object exists which satisfies the full set of conditions, theelectronic device 101 may thus provide a related virtual object as apartially matching virtual object, thereby preserving the ability topresent a diversified range of information.

According to an embodiment of the present disclosure, the display 150 inFIG. 1 may therefore display the result of processing by the virtualobject processing module 170 or the processor 120 on the screen. Forexample, according to one embodiment of the present disclosure, avirtual object or a partially matching virtual object, which wasreceived from the virtual object processing module 170, may be overlaidor otherwise combined with a real image, which is seen by the client(e.g., user) through the display 150, and displayed together on thesingle display 150, so that information regarding the real environmentis displayed to the client via the displayed virtual object.

Although the virtual object processing module 170 is illustrated in FIG.1 as a separate module from the processor 120, at least some of thefunctions or functional units of the virtual object processing module170 may be included and/or implemented by or within the processor 120.In addition, all or some functions of the virtual object processingmodule 170 may be included and implemented within the processor 120 oranother module (e.g., camera module). According to various embodimentsof the present disclosure, all or some functions constituting thevirtual object processing module 170 may be configured in a separateelectronic device or a server, which is connected via a network.

For example, when an image is taken by a camera module (corresponding tothe camera module 1291 in FIG. 12) provided on the electronic device101, an object recognized from the captured image may be compared andmatched with a virtual object, thereby facilitating implementation ofaugmented reality. The virtual object to be generated, in this case, maybe an object stored in the electronic device 101, as described above, oran object received from an external server 106 (e.g., the virtual objectproviding server 1020 in FIG. 10) via a network 162 at a request of theelectronic device 101.

For example, at least one real object is recognized from an image takenby the electronic device 101, and a plurality of conditions (e.g., thegeographical position of the electronic device 101, the aimingdirection, the aiming range, the aiming target, the aiming time, thedegree of exposure to a different client, environmental conditions suchas weather, client gestures, etc.) are transmitted to the virtual objectprocessing module 170 inside the electronic device 101 to request avirtual object, or the plurality of conditions are transmitted to theexternal server 106 via the network 162 to request a virtual object;then, the virtual object processing module 170 or the server 106 maysearch the database for a virtual object matching with the plurality ofconditions and provide the virtual object found. The electronic device101 may match (image synthesis or image overlay) the virtual object,which has been provided by the virtual object processing module 170 orthe server 106, with the currently taken image, thereby displayingaugmented reality.

When there exists no virtual object, which matches with the plurality ofconditions, in the virtual object processing module 170 or the server106, no virtual object could be provided. However, according to variousembodiments of the present disclosure, a virtual object matching with atleast one of the plurality of conditions is provided, thereby providingthe client with various useful information.

Each function unit or module, as used in embodiments of the presentdisclosure, may refer to a functional or structural combination ofhardware for performing the technical idea of the embodiments of thepresent disclosure and software for driving the hardware. A personskilled in the art, to which embodiments of the present disclosurepertain, could easily understand that each function unit or module,described above, may refer to a predetermined code and a logical unit ofa hardware resource for executing the predetermined code, for example,and does not necessarily mean either a physically connected code or onekind of hardware.

An electronic device for providing a virtual object according to one ofvarious embodiments of the present disclosure may include: a virtualobject requesting unit configured to request a search for a virtualobject corresponding to a plurality of conditions; and an object requestprocessing unit configured to search for a virtual object, whichsatisfies the plurality of conditions, from among at least one virtualobject and, when no virtual object exists that satisfies the pluralityof conditions, provide a virtual object that satisfies at least one ofthe plurality of conditions.

According to various embodiments, the electronic device may furtherinclude a virtual object registering unit configured to store at leastone virtual object in conformity with a plurality of conditions.

According to various embodiments, the electronic device may furtherinclude a display configured to synthesize the virtual object with animage, which is being displayed on the screen, and display the result ofsynthesis.

According to various embodiments, the object request processing unit mayinclude a condition comparing unit configured to compare the pluralityof conditions with a plurality of conditions corresponding to a storedvirtual object; and a partially matching virtual object setting unitconfigured to determine, when at least one condition does not coincideas a result of the comparison, whether the non-coinciding conditionpersists or not and, when it is determined as a result of thedetermination that the non-coinciding condition has persisted at leastfor a preset period of time, register at least one coinciding conditionfrom among the plurality of conditions, in connection with which thenon-coinciding condition has persisted, as a partially matchingcondition; and the object request processing unit may provide thevirtual object when the plurality of conditions satisfy the partiallymatching condition.

According to various embodiments, when the non-coinciding condition isan image, the object request processing unit may process so that thevirtual object is displayed at a changed part of the image displayed onthe screen of the electronic device.

According to various embodiments, the virtual object may be at least oneselected from among a still image, a moving image, a sound, a smell, atouch, a temperature, and a position.

According to various embodiments, the condition may be at least oneselected from among the geographical position of the electronic device,the aiming direction of a camera of the electronic device, the aimingrange of the camera, the aiming target of the camera, the aiming time ofthe camera, the degree of exposure to a different client of the camera,weather in the environment of the electronic device, and a clientgesture as detected by the electronic device.

FIG. 3 is a flowchart illustrating a virtual object generation procedureaccording to various embodiments of the present disclosure. Referring toFIG. 3, a virtual object is stored and associated with a plurality ofconditions in operation 302. A virtual object request for implementingaugmented reality is received in operation 304, which may include aplurality of conditions to be matched, as described below A virtualobject conforming to the corresponding condition may thus be providedaccording to various embodiments of the present disclosure.

The virtual object request can be a transmission including, for examplea plurality of conditions. When the request is received, a virtualobject satisfying (e.g., matching) all the plurality of conditions canbe searched for in operation 306, thereby providing an object satisfyingthe transmitted plurality of conditions. In operation 308, when anobject is detected satisfying all of the plurality of conditions as aresult of the search, the corresponding virtual object found can betransmitted in operation 310.

According to various embodiments of the present disclosure, in operation308, when no object exists that satisfies all of the plurality ofconditions as a result of the search, a search for a partially matchingvirtual object can be made in operation 312 according to variousembodiments of the present disclosure. When a partially matching virtualobject exists as a result of the search, the corresponding partiallymatching virtual object can be transmitted in operation 314.

According to various embodiments of the present disclosure, a pluralityof conditions corresponding to the virtual object or a plurality ofconditions transmitted to request the virtual object may include variousconditions. For example, the plurality of conditions may include, asdescribed above, the geographical position of an electronic device thatdisplays the virtual object, the aiming direction, the aiming range, theaiming target, the aiming time, the degree of exposure to a differentclient, environmental conditions such as weather, client gestures, etc.,but conditions according to embodiments are not limited thereto.

For example, when a real image is taken through a camera module providedon the electronic device, information may be recognized from the takenimage, or various types of information sensed at the image-taking timemay be extracted, thereby generating condition information. In addition,for example, recognition information recognized from the taken image maybe information regarding the kind of object recognized from the takenimage (e.g., barcode, QR code, wine label, physical body, human body,face, etc.), may be information regarding an image of at least a part,including an area of the object recognized from the taken image, or maybe information regarding analysis of the object recognized from thetaken image (e.g., barcode identification information, QR code analysisinformation, feature point information (descriptor, etc.).

Meanwhile, setting or change regarding a plurality of conditions forgenerating the virtual object may be made inside the electronic deviceor made inside the server. In addition, setting or change regardingconditions for generating the virtual object may be made by the servermanager, the service manager, or the client.

FIG. 4 is a flowchart illustrating a procedure for configuring (e.g.setting) a partially matching virtual object according to variousembodiments of the present disclosure. Referring to FIG. 4, a virtualobject request is received in operation 402. A search may be conductedfor a matching virtual object which matches the plurality ofcorresponding conditions. Alternatively, a search may be conducted for apartially matching virtual object and provided (as illustrated in FIG.3). Similarly, a partially matching virtual object may be set byanalyzing the plurality of received conditions according to variousembodiments of the invention.

For example, in operation 404, a plurality of conditions attending orreceived with the received virtual object request may be compared with aplurality of conditions corresponding to a stored virtual object; and,when at least one non-coinciding condition exists in operation 406, itis determined whether the non-coinciding condition persists for apredetermined period of time. For example, when it is determined inoperation 408 that the non-coinciding condition as described above haspersisted for the predetermined period of time (that is, at least onecoinciding condition from among a plurality of conditions, in connectionwith which the non-coinciding condition has persisted), it may beregistered as a partially matching condition in operation 410. Inaddition, a virtual object corresponding to the partially matchingcondition may be set as a partially matching virtual object in operation412. Accordingly, when a virtual object satisfies the conditionregistered as a partially matching condition, the virtual object may beprovided as a partially matching virtual object.

In one example, it will be assumed that a plurality of conditions aregenerated regarding a position, a aiming point, and a target (e.g.,image), and, at the request of a virtual object, the correspondingvirtual object cannot be provided because conditions regarding theposition and the aiming point are satisfied, while the target conditionis not satisfied. Then, the partially coinciding conditions may bedetermined sufficient as partially matching conditions, and a partiallymatching virtual object may be retrieved and transmitted (or generated)because of the matching of at least one of the matching (or coinciding)conditions.

It will be assumed, as another example, that a plurality of conditionsare generated regarding the position, the aiming point, and the target(e.g., image), and, at the request of a virtual object, thecorresponding virtual object cannot be provided because conditionsregarding the aiming point and the target are satisfied, while theposition condition is not satisfied; then, the partially coincidingconditions may be determined as partially matching conditions, and apartially matching virtual object may be set on the basis of at leastone of the remaining conditions that coincide.

The method for providing a virtual object according to an embodiment ofthe present disclosure may be implemented in the form of a programcommand which can be executed through various computer means and bestored in a computer-readable medium. The computer readable medium mayinclude a program command, a data file, a data structure, and the likeindependently or in combination. The program command recorded in themedium may be things specially designed and configured for the presentdisclosure, or things that are well known to and can be used by thoseskilled in the computer software related art. An example of thecomputer-readable recording medium includes magnetic media such as ahard disc, a floppy disc and a magnetic tape, optical media such as aCD-ROM and a DVD, magneto-optical media such as a floptical disc, and ahardware device, such as a ROM, a RAM, a flash memory, which isspecially designed to store and perform the program instruction.Examples of the program command include a machine language codegenerated by a compiler and a high-level language code executable by acomputer through an interpreter and the like. The hardware devices maybe configured to operate as one or more software modules to perform theoperations of the present disclosure, and vice versa.

A method for providing a virtual object according to one of variousembodiments of the present disclosure may include the operations of:confirming a plurality of conditions by an electronic device; searchingfor a virtual object, which satisfies the plurality of conditions, fromamong at least one virtual object by the electronic device; andproviding a virtual object, which satisfies at least one of theplurality of conditions, by the electronic device when no virtualobjects exists that satisfies the plurality of conditions as a result ofthe search.

According to various embodiments, the method may further include anoperation of storing at least one virtual object so as to correspond toa plurality of conditions.

According to various embodiments, the operation of providing a virtualobject may include an operation of synthesizing the virtual object withan image displayed on the screen and displaying the result of synthesis.

According to various embodiments, the method may further include theoperations of: comparing the plurality of conditions with a plurality ofconditions corresponding to the virtual object; determining, when atleast one condition does not coincide as a result of the comparison,whether the non-coinciding condition persists or not; registering atleast one coinciding condition as a partially matching condition, whenit is determined as a result of the determination that thenon-coinciding condition has persisted at least a preset period of time,from among a plurality of conditions, in connection with which thenon-coinciding condition has persisted; and providing the virtual objectwhen the plurality of conditions satisfy the partially matchingcondition.

According to various embodiments, the method may include the operationsof: providing an image-type virtual object when the non-coincidingcondition is an image; and displaying the virtual object at a changedportion of the image displayed on the screen.

According to various embodiments, the virtual object may be at least oneselected from among a still image, a moving image, a sound, a smell, atouch, a temperature, and a position.

According to various embodiments, the condition may be at least oneselected from among the geographical position of the electronic device,the aiming direction, the aiming range, the aiming target, the aimingtime, the degree of exposure to a different client, weather, and aclient gesture.

A method for providing a virtual object in an electronic deviceaccording to one of various embodiments of the present disclosure mayinclude the operations of: requesting a virtual object by transmitting aplurality of conditions to a server; receiving a virtual object from theserver; and synthesizing the received virtual object with an imagedisplayed on the screen and displaying the result of synthesis, and thevirtual object received from the server may be a virtual object, whichsatisfies the plurality of conditions received from the electronicdevice, from among virtual objects stored in a database of the server,or may be a virtual object that satisfies at least one of the pluralityof conditions received when no virtual object exists that satisfies allof the plurality of conditions received as a result of searching throughvirtual objects stored in the database.

According to various embodiments, the virtual object may be at least oneselected from among a still image, a moving image, a sound, a smell, atouch, a temperature, and a position.

According to various embodiments, the condition may be at least oneselected from among the geographical position of the electronic device,the aiming direction, the aiming range, the aiming target, the aimingtime, the degree of exposure to a different client, weather, and aclient gesture.

Hereinafter, examples of virtual objects and partially matching virtualobjects, which are registered in a database, will be described withreference to FIG. 5 and FIG. 6. Examples of virtual objects or partiallymatching virtual objects described below are specific examples for thepurpose of aiding understanding of various embodiments, and may bemodified and implemented in various methods. For example, the kind ofconditions, the number of matching conditions, conditions for setting apartially matching virtual object, etc. may be variously modified andimplemented.

FIG. 5 is a diagram illustrating virtual objects registered in adatabase according to various embodiments of the present disclosure.Referring to FIG. 5, a plurality of conditions (e.g., three conditionsincluding a first condition 501, a second condition 502, and a thirdcondition 503 in FIG. 5) may be stored and each set associated to eachof a number of virtual object 504.

For example, the first virtual object may have A-1 stored as the firstcondition 501, B-1 as the second condition 502, and C-1 as the thirdcondition 503. To provide a more detailed example for aidingunderstanding of the present embodiment, as illustrated in FIG. 7, forexample, the first condition may be a geographical position, the secondcondition may be an object detectable from a captured image, and thethird condition may be user information.

Similarly, the second virtual object may have A-2 stored as the firstcondition 501, B-2 as the second condition 502, and C-2 as the thirdcondition 503; the third virtual object may have A-3 stored as the firstcondition 501, B-3 as the second condition 502, and C-3 as the thirdcondition 503; and the N^(th) virtual object may have A-N stored as thefirst condition 501, B-N as the second condition 502, and C-N as thethird condition 503.

Therefore, when a plurality of conditions is received, including a firstcondition 501 of A-1, a second condition 502 of B-1, and a thirdcondition 503 of C-1 with a request for a virtual object, a firstvirtual object matching all of the three conditions, may be searched forand provided if found. Similarly, when a plurality of conditions isreceived including a first condition 501 of A-2, a second condition 502of B-2, and a third condition 503 of C-2, requesting a virtual object isrequested, a second virtual object which coincides with all of the threeconditions may be retrieved and provided. When any of the plurality ofconditions is not satisfied, it may be determined that there is no fullycoinciding or matching virtual object, meaning that no virtual objectmay be provided. However, in these cases when there exists a partiallymatching virtual objet, which partially coincides with only some, ratherthan all the conditions, according to various embodiments of the presentdisclosure as described above, the corresponding partially matchingvirtual object may then be provided.

FIG. 6 is a diagram illustrating a partially matching virtual objectconfiguration according to various embodiments of the presentdisclosure.

Referring to FIG. 6, when a plurality of conditions including a firstcondition 601 of A-1, a second condition 602 of B-1, and a thirdcondition 603 of C-1 are received with a first request for a virtualobject (as previously described with reference to FIG. 5), a firstvirtual object coinciding with all of the three conditions may besearched for and provided as the corresponding virtual object 604 whendetected. When a plurality of conditions including a first condition 601of A-3, a second condition 602 of B-3, and a third condition 603 of C-3are received at a second request for a virtual object, a third virtualobject matching or coinciding with all of the three conditions may bedetected and provided as the corresponding virtual object 604. When aplurality of conditions including a first condition 601 of A-1, a secondcondition 602 of B-1, and a third condition 603 of C-1 are received at athird request and a virtual object is requested, a first virtual object,which matches or coincides with all of the three conditions, may bedetected as the corresponding virtual object 604 and provided to theelectronic device, as in the case of the first request.

According to various embodiments of the present disclosure, when aplurality of conditions including a first condition 601 of A-1, a secondcondition 602 of B-1, and a third condition 603 of C-4 are received at aN^(th) request and a virtual object is requested, no virtual objectexists that coincides with all of the three conditions, meaning novirtual object 604 may be provided. In addition, when a plurality ofconditions including a first condition 601 of A-1, a second condition602 of B-1, and a third condition 603 of C-5 are received at a(N+1)^(th) request and a virtual object is requested, no virtual objectexists that coincides with all of the three conditions, meaning novirtual object 604 may be provided. In addition, when a plurality ofconditions including a first condition 601 of A-1, a second condition602 of B-1, and a third condition 603 of C-4 are received at a(N+2)^(th) request and a virtual object is requested, no virtual objectexists that coincides with all of the three conditions, meaning novirtual object 604 may be provided.

According to various embodiments of the present disclosure, it may bedetermined that when the first condition 601 is A-1 and the secondcondition 602 is B-1 at the N^(th) request, the (N+1)^(th) request, andthe (N+2)^(th) request, the third condition 603 has been changed. Forexample, a position-based condition may be changed or an image-basedcondition may have been changed, as illustrated in FIG. 8. When thenon-coinciding third condition 603 persists at least a predeterminednumber of times or a predetermined period of time as described above, aplurality of conditions having a first condition 601 of A-1, a secondcondition 602 of B-1, and a third condition 603 of C-1, which correspondto the first virtual object, may be set as partially matchingconditions. In addition, a first virtual object, which satisfies thepartially matching condition, may be thus be set as a partially matchingvirtual object.

When the first virtual object is set as a partially matching virtualobject in this manner, the first virtual object may be provided at arequest for a virtual object, even when the first and second conditionsare satisfied but the third condition is not satisfied. Similarly, whenthe first condition is A-1, the third condition is C-2, and the secondcondition has been changed, a second virtual object, which has been setbefore the change of the second condition, may be set as a partiallymatching virtual object.

Hereinafter, various examples of displaying a partially matching virtualobject in an electronic device according to various embodiments of thepresent disclosure will be described with reference to FIG. 7 to FIG. 9.

FIG. 7 is a diagram illustrating an example of partially matchingvirtual object provision according to various embodiments of the presentdisclosure. Referring to FIG. 7, client A 720 may use an electronicdevice 101 (e.g., a smartphone) at a specific time and generate anaugmented reality word balloon 730 for a cartoon dog image for a coffeecup 710 in a geographic location Yeoksam-dong 700. At the specific timeat which the virtual object (e.g., word balloon) has been generated, theclient ID (e.g., client A 720), the geographic position (Yeoksam-dong700), and the cartoon dog image on a coffee cup 710 may be a pluralityof pieces of situational information or conditions corresponding to therelevant virtual object, i.e. word balloon 730.

According to various embodiments of the present disclosure, when one ofthe conditions from amount the client ID, the geographical position andthe cartoon dog image 710 of the virtual object registered in FIG. 7 ischanged, the virtual object registered in FIG. 7 may be registered as apartially matching virtual object so that, even when the conditions arepartially satisfied, the virtual object may still be provided.

FIG. 8 is a diagram illustrating one example of partially matchingvirtual object provision according to various embodiments of the presentdisclosure. Referring to FIG. 8, client A 820 may utilize an electronicdevice 101 (e.g., a smartphone) which generates the augmented realityword balloon 830, as related to a coffee cup cartoon dog image 810 inYeoksam-dong 800. The specific time at which the virtual object (e.g.,the word balloon) has been generated, the client ID (e.g., “client A”820), the position (Yeoksam-dong 800), and the coffee cup cartoon dogimage 810 may be a plurality of pieces of situation information orconditions corresponding to the virtual object, i.e. word balloon 830.

According to various embodiments of the present disclosure, when atleast one condition from among multiple conditions of a virtual objectis changed, a virtual object (e.g. word balloon 830) may be displayed onthe basis of one or more remaining condition that have not changed.

For example, even when less than all conditions are matched due toabsence of the coffee cup cartoon dog image, the same virtual object(e.g., the word balloon 730) may be provided as the augmented realityimage. For example, as in various embodiments of the present disclosure,even when coffee cup cartoon dog image has been changed or deleted fromthe plurality of conditions for displaying the virtual object, thevirtual object (e.g., word balloon 830) may nevertheless be displayed onthe basis of matching a portion or part of the plurality of conditions,which continue to correspond to the virtual object.

According to various embodiments of the present disclosure, client A mayuse the electronic device 101 to generate and utilize an additionalobject with regard to a partially matching virtual object. For example,client A may detect a partially matching virtual object from theelectronic device 101 and generate a word balloon reading “cartoon dogcafé has moved to Cheongdam-dong”, indicating, for example, that a cafeutilizing the cartoon logo has moved to another locale, and displayrelevant information indicating the new location, such as a map orstreet view of the new location. According to various embodiments of thepresent disclosure, client B, who desires information regarding thecartoon dog café may be provided with one or more generated virtualobjects in augmented reality. Accordingly, a virtual object may beretrieved and display when conditions match a portion or part of theconditions usually designated for generation of the virtual object.

According to various embodiments of the present disclosure, a level (orstep) may be set (or configured) with respect to a plurality ofconditions of a virtual object, and some degree of displaying orgenerating the partially matching virtual object may be varied accordingto the degree of correlation between conditions at the point of time atwhich the virtual object corresponding to the plurality of conditions isfirst created, and conditions at a point of time at which the virtualobject is generated and displayed to be viewed by a user.

For example, referring back to FIG. 7 and FIG. 8, a virtual object maybe displayed and seen by a user. In this example, one of the pluralityof conditions regarding the virtual object is the presence of a coffeecup cartoon dog image 710, which may have been set initially duringinitial generation of the virtual object. In the present example, allconditions are satisfied, except the image-related condition.Accordingly, different levels of partially matching virtual images maybe displayed when the image is not a “coffee cup cartoon dog image” butis instead a “coffee cup image” or if an image is captured that hasnothing to do with coffee cups. Thus, in this example, theabove-mentioned security level (e.g., a step) may be used as a methodfor setting a plurality of levels of matching conditions controllingvarying displays of a virtual object.

Thus, in this example, a virtual object is being generated anddisplayed, and one of the original plurality of conditions forgenerating the virtual object is a coffee cup cartoon dog image. In thiscase, it may be implemented that if all conditions other than the imagecondition are matched, a partially matching virtual object may bedetermined exist according to the security level set with regard to theplurality of conditions. In these cases, the partially matching virtualobject may be displayed when information regarding the non-coincidingcondition, i.e. the image, is inputted. For example, input ofinformation regarding the non-coinciding condition (i.e. the image) maybe made through a voice “coffee cup cartoon dog”; alternatively, thecorresponding partially matching virtual object may be shown when thecoffee image is searched for and inputted.

According to various embodiments of the present disclosure,implementation may be made such that, when a condition, which is relatedto an existing condition in connection with a specific part, is inputtedwith regard to some non-coinciding conditions among conditions fordisplaying a virtual object, the corresponding coinciding virtual objectis displayed.

For example, when café associated with the cartoon dog has disappearedfrom the corresponding geographic position so that the coffee cupcartoon dog image 710, which is one of conditions of the virtual objectin FIG. 7, has changed to a heart coffee image 810 in FIG. 8, thevirtual object may be displayed on the changed real object, i.e. currentpreview image, as augmented reality on the basis of the remainingconditions of client ID 720 and position 700.

As illustrated in FIG. 8 as an embodiment of the method for displaying avirtual object, a condition of which has changed, the cartoon dog image,which has been one of conditions of the virtual object, may beoverlapped and displayed on a currently taken image as still anothervirtual object.

According to various embodiments of the present disclosure, by means ofa method capable of searching for a time line or time on the preview asstill another embodiment of the method for displaying a virtual objecthaving a changed condition, implementation may be made so that thechanged condition, i.e. the time at which cartoon dog coffee had existedor at which the virtual object had been generated, is revisited to bedisplayed together with the virtual object.

According to various embodiments, a real object and a virtual object maybe combined and stored or variously displayed.

For example, when the client has stored a virtual object as information,it may be inquired about when the client wants. In addition, when eachcondition includes images or position-related information, it may beexpressed in a gallery type, for example.

As illustrated in FIG. 9, according to another embodiment, an image atthe time of image taking and a virtual object may be mapped anddisplayed on the screen of the electronic device. For example, accordingto various embodiments of the present disclosure, all conditionsexisting within the range of an image is displayed by the electronicdevice, and the user selects a condition, thereby displaying virtualobjects that had not been visible at the time of image taking.

As still another embodiment of the method for displaying a virtualobject having a changed condition, when a virtual object has been set asa background when generating augmented reality information, thebackground at the time of recognition of a real object may be changed tothe background of the virtual object. For example, when a cartoon dogimage has been recognized, and when a matching virtual object is used asa background at the time of generation of augmented reality information,the client can watch the cartoon dog image be displayed on thebackground at the time of generation of the augmented realityinformation even when café background, except for the cartoon dog image,is changed later.

In another embodiment of the method for displaying a virtual objecthaving a changed condition, when the changed condition is a geographicposition in FIG. 7 and FIG. 8, the virtual object or the virtual objectand one of some conditions of the virtual object (e.g., the image) maybe displayed on the map or the street view.

The method for providing a virtual object or a partially matchingvirtual object according to various embodiments of the presentdisclosure may provide the object inside an electronic device or throughinterworking with an external server, as described above. In addition,at least a part of the method for providing a virtual object or apartially matching virtual object may be performed inside an electronicdevice, and at least a part of the remainder may be performed through anexternal server. Hereinafter, an embodiment of a method for providing avirtual object or a partially matching virtual object by an externalserver will be described with reference to FIG. 10 and FIG. 11.

FIG. 10 is a diagram illustrating a system according to variousembodiments of the present disclosure. Referring to FIG. 10, a systemaccording to an embodiment of the present disclosure may include atleast one electronic device 1000 and a virtual object providing server1020.

When an image is captured through a camera module provided on theelectronic device 1000 according to an embodiment of the presentdisclosure, an object recognized from the captured image may be matchedwith a virtual object, thereby providing augmented reality. The virtualobject may be an object stored in the electronic device 1000, or may bean object received from the virtual object providing server 1020 via acommunication network 1010 at a request of the electronic device 1000.

For example, at least one real object is recognized from an image takenby the electronic device 1000, and a plurality of conditions (e.g., thegeographical position of the electronic device 1000, the aimingdirection, the aiming range, the aiming target, the aiming time, thedegree of exposure to a different client, environmental conditions suchas weather, client gestures, etc.) are transmitted to the virtual objectproviding server 1020 via the communication network 1010 to request avirtual object; then, the virtual object providing server 1020 maysearch the database for a virtual object matching with the plurality ofconditions and provide the electronic device 1000 with the virtualobject found. The electronic device 1000 may match (image synthesis orimage overlay) the virtual object, which has been provided by thevirtual object providing server 1020, with the currently taken image,thereby displaying augmented reality.

According to various embodiments of the present disclosure, recognitionof a real object and collection of a plurality of conditions may beobtained by using multiple electronic devices 1000. For example,respective electronic devices 1000 may own different sensors or devices.For example, in order to configure complex conditions according tovarious embodiments, sensing information from multiple electronicdevices may be delivered to each other through communication modules. Asanother embodiment, a server may receive in aggregate sensinginformation from multiple electronic devices, thereby configuring aplurality of conditions.

When there exists no virtual object, which matches with the plurality ofconditions, in the virtual object server 1020, no virtual object couldbe provided. However, according to an embodiments of the presentdisclosure, a virtual object matching with at least one of the pluralityof conditions is provided to the electronic device 1000, therebyproviding the client with various useful information.

Although it has been assumed in the above description with reference toFIG. 10 that the electronic device 1000 requests the virtual objectproviding server 1020 to provide a virtual object and then receives thesame, a virtual object matching with a plurality of conditions may besearched through a storage unit inside the electronic device 1000 andthen displayed, as described above.

The communication network 1010 may be configured irrespective of anaspect of communication such as wired/wireless communication, and may beconfigured as various communication networks including a Personal AreaNetwork (PAN), a Local Area Network (LAN), a Metropolitan Area Network(MAN), a Wide Area Network (WAN) and the like. Further, thecommunication network 1010 may be a known World Wide Web (WWW), and mayuse a wireless transmission technology utilized for a short distancecommunication such as Infrared Data Association (IrDA) or Bluetooth. Inaddition, the communication network 1010 may include a cablebroadcasting network for receiving broadcasting signals, a terrestrialbroadcasting communication network, a satellite broadcastingcommunication network, etc.

FIG. 11 is a diagram illustrating a detailed configuration of a virtualobject providing server according to various embodiments of the presentdisclosure. Referring to FIG. 11, the virtual object providing server1020 may include a virtual object registering unit 1110, a virtualobject requesting unit 1120, an object request processing unit 1130, apartially matching virtual object setting unit 1140, etc. In addition,according to an embodiment of the present disclosure, the virtual objectproviding server 1020 may further include a database such as a virtualobject database 1150 and a condition information database 1160.

The virtual object registering unit 1110 may perform a function ofstoring at least one virtual object for implementing augmented reality,which corresponds to a plurality of conditions, in a database. Each ofthe virtual objects to be registered may be stored in the virtual objectdatabase 1150 so as to correspond to a plurality of conditions (e.g.,two or more conditions). In this case, the plurality of conditions maybe separately stored in the condition information database 1160 andmanaged, in order to set a partially matching virtual object.

At a request for virtual object registration from each electronic device1000, the virtual object registering unit 1110 may receive thecorresponding virtual object and a plurality of conditions and registerthem, or the virtual object providing server 1020 may directly registerthem.

The virtual object requesting unit 1120, as described with reference toFIG. 10, receives a plurality of conditions from the electronic device1000 and, when a matching virtual object is requested, sends a requestfor the virtual object to the object request processing unit 1130according to the request. In this case, the plurality of conditionsrequested may be stored in the condition information database 1160.

The object request processing unit 1130 may include a conditioncomparing unit 1131, a matching object transmitting unit 1132, a partialmatching processing unit 1133, etc. The condition comparing unit 1131performs a function of comparing conditions, which have been receivedaccording to the request for a virtual object through the virtual objectrequesting unit 1120, with a plurality of conditions corresponding toeach virtual object stored in the virtual object database 1150.

The matching object transmitting unit 1132 transmits a virtual object,all conditions of which coincide with the received conditions as aresult of comparison by the condition comparing unit 1131, to thecorresponding electronic device 1000 as a matching object.

When there exists no virtual object, all conditions of which coincidewith the plurality of conditions received, in the virtual objectdatabase 1150 as a result of comparison by the condition comparing unit1131, it may be determined whether a virtual object exists or not whichsatisfies at least one condition. When a virtual object exists thatsatisfies at least one condition as a result of the determination, thepartially matching processing unit 1133 may transmit the correspondingobject to the electronic device 1000 as a partially matching virtualobject. In addition, when the plurality of conditions received satisfy apreset partially matching condition, preset partially matchingprocessing may be performed according to another embodiment of thepresent disclosure. Various embodiments in this regard will be describedlater.

The partially matching virtual object setting unit 1140 performs afunction of setting a virtual object, among virtual objects stored,which satisfies a specific condition, as a partially matching virtualobject according to an embodiment of the present disclosure. Assuming,for example, that, among a plurality of conditions matching with eachvirtual object stored in the virtual object database 1150 according toan embodiment of the present disclosure, conditions having a specificnon-coinciding condition are repeatedly received over a predeterminedperiod of time; then, the corresponding virtual object may be set as apartially matching virtual object. Accordingly, when the plurality ofconditions received from the electronic device 1000 satisfy thepartially matching condition of the partially matching virtual object,the partially matching processing unit 1133 may provide the electronicdevice 1000 with the corresponding partially matching virtual object.

Accordingly, even when a specific condition is changed (e.g., change ofa position or an image, among a plurality of conditions) so that novirtual object exists which satisfies the entire conditions, theelectronic device 1000 can provide a related virtual object as apartially matching virtual object, thereby providing the client withmore diversified pieces of information.

A virtual object providing server according to one of variousembodiments of the present disclosure may include: a virtual objectregistering unit configured to store at least one virtual object foraugmented reality so as to correspond to a plurality of conditions; avirtual object requesting unit configured to receive a plurality ofconditions from an electronic device and request a search for a virtualobject; and an object request processing unit configured to search for avirtual object, which satisfies the plurality of conditions receivedfrom the electronic device, from among the stored virtual objects and,when no virtual object exists that satisfies all of the plurality ofreceived conditions, transmit a virtual object, which satisfies at leastone of the plurality of received conditions, to the electronic device.

According to various embodiments, the object request processing unit mayinclude a condition comparing unit configured to compare the pluralityof received conditions with a plurality of conditions corresponding to astored virtual object; and a partially matching object setting unitconfigured to determine, when at least one condition does not coincideas a result of the comparison, whether the non-coinciding conditionpersists or not and, when it is determined as a result of thedetermination that the non-coinciding condition has persisted at leastfor a preset period of time, register at least one coinciding conditionfrom among the plurality of conditions, in connection with which thenon-coinciding condition has persisted, as a partially matchingcondition; and the object request processing unit may provide theelectronic device with the virtual object when the plurality ofconditions received from the electronic device satisfy the partiallymatching condition.

Hereinafter, an example detailed structure of an electronic device, towhich embodiments of the present disclosure may be applied, will bedescribed with reference to FIG. 12. FIG. 12 illustrates a block diagram1200 of an electronic device 1201 according to various embodiments. Theelectronic device 1201 may include, for example, all or a part of theelectronic device 101 shown in FIG. 1. Referring to FIG. 12, theelectronic device 1201 may include at least one application processor(AP) 1210, a communication module 1220, a Subscriber IdentificationModule (SIM) card 1224, a memory 1230, a sensor module 1240, an inputdevice 1250, a display 1260, an interface 1270, an audio module 1280, acamera module 1291, a power management module 1295, a battery 1296, anindicator 1297, and a motor 1298.

The AP 1210 may control multiple hardware or software componentsconnected to the AP 1210 by driving an operating system or anapplication program, process various data including multimedia data, andperform calculations. The AP 1210 may be embodied as, for example, aSystem on Chip (SoC). According to an embodiment, the AP 1210 mayfurther include a graphic processing unit (GPU) (not shown).

The communication module 1220 (for example, the communication interface160) may perform data transmission/reception in communication betweenthe electronic device 1201 (for example, the electronic device 101) andother electronic devices (for example, the electronic device 104 and theserver 106) connected over a network. According to an embodiment, thecommunication module 1220 may include a cellular module 1221, a WiFimodule 1223, a BT module 1225, a GPS module 1227, an NFC module 1228,and a radio frequency (RF) module 1229.

The cellular module 1221 may provide a voice call, a video call, amessage service, or an internet service through a communication network(for example, LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM, or the like).Also, the cellular module 1221 may identify and authenticate anelectronic device in a communication network using, for example, asubscriber identification module (for example, the SIM card 1224).According to an embodiment, the cellular module 1221 may perform atleast a part of functions that may be provided by the AP 1210. Forexample, the cellular module 1221 may perform at least a part of amultimedia control function.

According to an embodiment, the cellular module 1221 may include acommunication processor (CP). In addition, for example, the cellularmodule 1221 may be implemented as a System on Chip (SOC). In FIG. 12,the component elements such as the cellular module 1221 (e.g., acommunication processor), the memory 1230, the power management module1295, and the like are separated with the AP 1210, but, according to anembodiment, the AP 1210 may include at least a part of theabove-mentioned component elements (e.g., the cellular module 1221).

According to an embodiment, the AP 1210 or the cellular module 1221(e.g., the communication processor) may load a command or data receivedfrom at least one of a non-volatile memory and other elements connectedthereto into a volatile memory and process the loaded command or data.Further, the AP 1210 or the cellular module 1221 may store data receivedfrom or generated by at least one of the other components in anon-volatile memory.

Each of the Wi-Fi module 1223, the BT module 1225, the GPS module 1227,and the NFC module 1228 may include, for example, a processor forprocessing data transmitted/received through the corresponding module.In FIG. 16, the cellular module 1221, the WiFi module 1223, the BTmodule 1225, the GPS module 1227, and the NFC module 1228 areillustrated as blocks separated from one another, but at least a part(for example, two or more) of the cellular module 1221, the WiFi module1223, the BT module 1225, the GPS module 1227, and the NFC module 1228may be included in one Integrated Chip (IC) or one IC package accordingto an embodiment. For example, at least a part (for example, acommunication processor corresponding to the cellular module 1221 and aWi-Fi processor corresponding to the Wi-Fi module 1223) of theprocessors corresponding to the cellular module 1221, the Wi-Fi module1223, the BT module 1225, the GPS module 1227, and the NFC module 1228,respectively, may be implemented as a single SoC.

The RF module 1229 may transmit/receive data, for example, an RF signal.Although not illustrated, the RF module 1229 may include, for example, atransceiver, a Power Amp Module (PAM), a frequency filter, a Low NoiseAmplifier (LNA), or the like. Further, the RF unit 1229 may furtherinclude a component for transmitting/receiving an electromagnetic wavein the air in a radio communication, such as a conductor or a conductingwire. Although FIG. 16 shows that the cellular module 1221, the WiFimodule 1223, the BT module 1225, the GPS module 1227, and the NFC module1228 share one RF module 1229, at least one of the cellular module 1221,the WiFi module 1223, the BT module 1225, the GPS module 1227, and theNFC module 1228 may perform RF signal transmission/reception through aseparate RF module.

The SIM card 1224 may be a card including a subscriber identificationmodule, and may be inserted into a slot formed in a particular portionof the electronic device. The SIM card 1224 may include uniqueidentification information (for example, Integrated Circuit CardIDentifier (ICCID)) or subscriber information (for example,International Mobile Subscriber Identity (IMSI)).

The memory 1230 (for example, the memory 130) may include an internalmemory 1232 or an external memory 1234. The internal memory 1232 mayinclude at least one of a volatile memory (for example, a Dynamic RandomAccess Memory (DRAM), a Static RAM (SRAM), a Synchronous Dynamic RAM(SDRAM), and the like) and a non-volatile memory (for example, a OneTime Programmable Read Only Memory (OTPROM), a Programmable ROM (PROM),an Erasable and Programmable ROM (EPROM), an Electrically Erasable andProgrammable ROM (EEPROM), a mask ROM, a flash ROM, a NAND flash memory,a NOR flash memory, and the like).

According to one embodiment, the internal memory 1232 may be a SolidState Drive (SSD). The external memory 1234 may further include a flashdrive, for example, a Compact Flash (CF), a Secure Digital (SD), a MicroSecure Digital (Micro-SD), a Mini Secure Digital (Mini-SD), an eXtremeDigital (xD), a memory stick, or the like. The external memory 1234 maybe functionally connected to the electronic device 1201 through variousinterfaces. According to an embodiment, the electronic device 1201 mayfurther include a storage device (or storage medium) such as a harddrive.

The sensor module 1240 may measure a physical quantity or detect anoperation state of the electronic device 1201, and may convert themeasured or detected information to an electronic signal. The sensormodule 1240 may include, for example, at least one of a gesture sensor1240A, a gyro sensor 1240B, an atmospheric pressure sensor 1240C, amagnetic sensor 1240D, an acceleration sensor 1240E, a grip sensor1240F, a proximity sensor 1240G, a color sensor 1240H (e.g., a Red,Green, Blue (RGB) sensor), a biometric sensor 1240I, atemperature/humidity sensor 1240J, a luminance sensor 1240K, and anultraviolet (UV) sensor 1240M. Additionally or alternatively, the sensormodule 1240 may include, for example, an E-nose sensor (notillustrated), an ElectroMyoGraphy (EMG) sensor (not illustrated), anElectroEncephaloGram (EEG) sensor (not illustrated), anElectroCardioGram (ECG) sensor (not illustrated), an InfraRed (IR)sensor (not illustrated), an iris sensor (not illustrated), afingerprint sensor (not illustrated) and the like. The sensor module1240 may further include a control circuit for controlling one or moresensors included therein.

The input device 1250 may include a touch panel 1252, a (digital) pensensor 1254, a key 1256, or an ultrasonic input device 1258. The touchpanel 1252 may recognize a touch input through at least one of, forexample, a capacitive scheme, a resistive scheme, an infrared scheme,and an ultrasonic scheme. The touch panel 1252 may further include acontrol circuit. The capacitive scheme touch panel may recognizephysical contact or proximity. The touch panel 1252 may further includea tactile layer. In this case, the touch panel 1252 may provide atactile reaction to the client.

The (digital) pen sensor 1254 may be embodied, for example, using amethod identical or similar to a method of receiving a touch input of aclient, or using a separate recognition sheet. The key 1256 may include,for example, a physical button, an optical key or a keypad. Theultrasonic input device 1258 is a device which can detect an acousticwave by a microphone (for example, a microphone 1288) of the electronicdevice 1201 through an input tool generating an ultrasonic signal toidentify data, and can perform wireless recognition. According to anembodiment, the electronic device 1201 may also receive a client inputfrom an external device (e.g., a computer or a server) connected theretoby using the communication module 1220.

The display 1260 (for example, the display 150) may include a panel1262, a hologram device 1264, or a projector 1266. The panel 1262 maybe, for example, a Liquid Crystal Display (LCD), Active-Matrix OrganicLight Emitting Diode (AM-OLED), or the like. The panel 1262 may beembodied to be, for example, flexible, transparent, or wearable. Thepanel 1262 may be also configured as one module together with the touchpanel 1252. The hologram device 1264 may show a stereoscopic image inthe air by using interference of light. The projector 1266 may projectlight onto a screen to display an image. For example, the screen may belocated inside or outside the electronic device 1201. According to anembodiment, the display 1260 may further include a control circuit forcontrolling the panel 1262, the hologram unit 1264, or the projector1266.

The interface 1270 may include, for example, a High-DefinitionMultimedia Interface (HDMI) 1272, a Universal Serial Bus (USB) 1274, anoptical interface 1276, or a D-subminiature (D-sub) 1278. The interface1270 may be included in, for example, the communication interface 160illustrated in FIG. 1. Additionally or alternatively, the interface 1270may include, for example, a Mobile High-definition Link (MHL) interface,a Secure Digital (SD) card/Multi-Media Card (MMC) interface, or anInfrared Data Association (IrDA) standard interface.

The audio module 1280 may bidirectionally convert a sound and anelectronic signal. At least some components of the audio module 1280 maybe included in, for example, the input/output interface 140 illustratedin FIG. 1. The audio module 1280 may process voice information input oroutput through, for example, a speaker 1282, a receiver 1284, earphones1286, the microphone 1288 or the like.

The camera module 1291 is a device that can take still and movingimages, and according to an embodiment, may include one or more imagesensors (e.g., a front sensor or a rear sensor), a lens (not shown), anImage Signal Processor (ISP) (not shown), or a flash (e.g., an LED or axenon lamp, not shown).

The power management module 1295 may manage power of the electronicdevice 1201. Although not illustrated, the power management module 1295may include, for example, a Power Management Integrated Circuit (PMIC),a charger Integrated Circuit (IC), or a battery or fuel gauge.

The PMIC may be mounted to, for example, an integrated circuit or an SoCsemiconductor. Charging methods may be classified into a wired chargingmethod and a wireless charging method. The charger IC may charge abattery and prevent over voltage or over current from being flowed froma charger. According to an embodiment, the charger IC may include acharger IC for at least one of the wired charging and the wirelesscharging. A magnetic resonance scheme, a magnetic induction scheme, oran electromagnetic scheme may be exemplified as the wireless chargingmethod, and an additional circuit for wireless charging, such as a coilloop circuit, a resonance circuit, a rectifier circuit, and the like maybe added.

The battery fuel gauge may measure, for example, the remaining amount ofthe battery 1296, a charging voltage and current, or temperature. Thebattery 1296 may store or generate electricity, and may supply power tothe electronic device 1201 using the stored or generated electricity.The battery 1296 may include, for example, a rechargeable battery or asolar battery.

The indicator 1297 may display a particular state of the electronicdevice 1201 or a part thereof (for example, the AP 1210), for example, aboot-up state, a message state, a charging state, or the like. The motor1298 may convert an electrical signal to a mechanical vibration.Although not shown, the electronic device 1201 may include a processingunit (e.g., a GPU) for supporting a mobile TV function. The processingunit for supporting the mobile TV may process media data according to astandard of Digital Multimedia Broadcasting (DMB), Digital VideoBroadcasting (DVB), media flow or the like.

Each of the components of the electronic device according to the presentdisclosure may be implemented by one or more components and the name ofthe corresponding component may vary depending on a type of theelectronic device. The hardware 200 according to an embodiment of thepresent disclosure may include at least one of the above-describedelements. Some of the above-described elements may be omitted from thehardware 200, or the hardware 200 may further include additionalelements. Further, some of the components of the electronic deviceaccording to the present disclosure may be combined to be one entity,which can perform the same functions as those of the components beforethe combination.

The term “module” used in the present disclosure may refer to, forexample, a unit including one or more combinations of hardware,software, and firmware. The “module” may be interchangeable with a term,such as a unit, a logic, a logical block, a component, or a circuit. The“module” may be the smallest unit of an integrated component or a partthereof. The “module” may be a minimum unit for performing one or morefunctions or a part thereof. The “module” may be mechanically orelectronically implemented. For example, the “module” according to thepresent disclosure may include at least one of an Application-SpecificIntegrated Circuit (ASIC) chip, a Field-Programmable Gate Arrays (FPGA),and a programmable-logic device for performing operations which has beenknown or are to be developed hereinafter.

According to various embodiments, at least some of the devices (forexample, modules or functions thereof) or the method (for example,operations) according to the present disclosure may be implemented by acommand stored in a computer-readable storage medium in a programmingmodule form. When the command is executed by one or more processors (forexample, the processor 120), the one or more processors may execute afunction corresponding to the command. The computer-readable storagemedium may be, for example, the memory 130. At least some of theprogramming modules may be implemented (for example, executed) by, forexample, the processor 120. At least a part of the programming modulemay include, for example, a module, a program, a routine, a set ofinstructions and/or a process for performing one or more functions.

The computer readable recoding medium may include magnetic media, suchas a hard disk, a floppy disk and a magnetic tape, optical media, suchas a Compact Disc Read Only Memory (CD-ROM) and a Digital Versatile Disc(DVD), magneto-optical media, such as a floptical disk, and a hardwaredevice specially configured to store and execute a program instruction(for example, a programming module), such as a Read Only Memory (ROM), aRandom Access Memory (RAM), a flash memory, and the like. In addition,the program instructions may include high class language codes, whichcan be executed in a computer by using an interpreter, as well asmachine codes made by a compiler. The aforementioned hardware device maybe configured to operate as one or more software modules in order toperform the operation of the present disclosure, and vice versa.

The programming module according to the present disclosure may includeone or more of the aforementioned components or may further includeother additional components, or some of the aforementioned componentsmay be omitted. Operations executed by a module, a programming module,or other component elements according to various embodiments of thepresent disclosure may be executed sequentially, in parallel,repeatedly, or in a heuristic manner. Further, some operations may beexecuted according to another order or may be omitted, or otheroperations may be added.

According to various embodiments, a storage medium storing commands isprovided, the commands being set to perform, when executed by at leastone processor, at least one operation by the at least one processor, andthe at least one operation may include: an operation of confirming aplurality of conditions; an operation of searching for a virtual object,which satisfies the plurality of conditions, from among at least onevirtual object; and an operation of providing a virtual object, whichsatisfies at least one of the plurality of condition, when no virtualobject exists that satisfies the plurality of conditions as a result ofthe search. In addition, different embodiments of various embodiments ofthe present disclosure may be possible.

The above-described embodiments of the present disclosure can beimplemented in hardware, firmware or via the execution of software orcomputer code that can be stored in a recording medium such as a CD ROM,a Digital Versatile Disc (DVD), a magnetic tape, a RAM, a floppy disk, ahard disk, or a magneto-optical disk or computer code downloaded over anetwork originally stored on a remote recording medium or anon-transitory machine readable medium and to be stored on a localrecording medium, so that the methods described herein can be renderedvia such software that is stored on the recording medium using a generalpurpose computer, or a special processor or in programmable or dedicatedhardware, such as an ASIC or FPGA. As would be understood in the art,the computer, the processor, microprocessor controller or theprogrammable hardware include memory components, e.g., RAM, ROM, Flash,etc. that may store or receive software or computer code that whenaccessed and executed by the computer, processor or hardware implementthe processing methods described herein. In addition, it would berecognized that when a general purpose computer accesses code forimplementing the processing shown herein, the execution of the codetransforms the general purpose computer into a special purpose computerfor executing the processing shown herein. Any of the functions andsteps provided in the Figures may be implemented in hardware, softwareor a combination of both and may be performed in whole or in part withinthe programmed instructions of a computer. No claim element herein is tobe construed under the provisions of 35 U.S.C. 112, sixth paragraph,unless the element is expressly recited using the phrase “means for”. Inaddition, an artisan understands and appreciates that a “processor” or“microprocessor” includes hardware in the disclosure. Under the broadestreasonable interpretation, the appended claims include statutory subjectmatter in compliance with 35 U.S.C. § 101.

The embodiments of the present disclosure disclosed in thisspecification and the accompanying drawings are merely particularexamples provided in order to clearly describe the technical contents ofthe present disclosure and help understanding of the present disclosure,and are not intended to limit the scope of the present disclosure.Therefore, all changes or modifications derived from the technical ideaof the present disclosure as well as the embodiments described hereinshould be interpreted to belong to the scope of the present disclosure.

What is claimed is:
 1. A method for providing a virtual object, themethod comprising: receiving a request for a virtual object including afirst condition set comprising a plurality of present conditions;searching a database for the virtual object by comparing each of theplurality of present conditions to each of a plurality of conditionsincluded in a plurality of condition sets, each set associated with atleast one virtual object stored in the database; in response to none ofthe plurality of condition sets having the plurality of conditionsmatching all of the plurality of present conditions, determining one ormore first conditions among the plurality of present conditionscoinciding with one or more second conditions included in one of theplurality of condition sets; in response to the coincidence between theone or more first conditions and the one or more second conditions beingrepeated a predetermined times, registering the one or more firstconditions as a partially matching condition set; and providing apartially matching virtual object corresponding to the partiallymatching condition set.
 2. The method of claim 1, further comprisingassociating the at least one virtual object to a condition set includinga stored plurality of conditions.
 3. The method of claim 2, furthercomprising: comparing the plurality of present conditions with thestored plurality of conditions associated with the virtual object; inresponse to at least one condition of the plurality of presentconditions being not matched with any of the stored plurality ofconditions according to the comparison, detecting whether thenon-matching at least one condition persists for a predetermined timeperiod; in response to the non-matching at least one condition beingpersisted for the predetermined period time, registering thenon-matching at least one condition as a partially matching condition;and providing the partially matching virtual object corresponding to thepartially matching condition in response to the plurality of presentconditions being matched with the partially matching condition.
 4. Themethod of claim 1, wherein the providing the partially matching virtualobject comprises generating and displaying the partially matchingvirtual object as an image on a screen of an electronic device.
 5. Themethod of claim 1, further comprising: providing an image-type virtualobject in response to the non-matching at least one condition being animage; and displaying the virtual object on a changed portion of animage displayed on a screen.
 6. The method of claim 1, wherein thevirtual object is at least one of a still image, a moving image, asound, a smell, a touch, a temperature, and a position.
 7. The method ofclaim 1, wherein the plurality of present conditions include at leastone of a geographical position of an electronic device, an aim directionof a camera of the electronic device, an aiming range of the camera, anaiming target of the camera, an aiming time of the camera, a degree ofexposure of the camera, a weather of an environment of the electronicdevice, and a user gesture detected by the electronic device.
 8. Anelectronic device for providing a virtual object, the electronic devicecomprising: a memory; and a processor, configured to: receive a requestfor the virtual object including a first condition set comprising aplurality of present conditions, execute a search for the virtual objectby comparing each of the plurality of present conditions to each of aplurality of conditions included in a plurality of condition sets, eachset associated with at least one virtual object stored in the memory,when none of the plurality of condition sets having the plurality ofconditions matching all of the plurality of present conditions,determine one or more first conditions among the received plurality ofpresent conditions coinciding with one or more second conditionsincluded in one of the plurality of condition sets, when the coincidencebetween the one or more first conditions and the one or more secondconditions is repeated a predetermined times, register the one or morefirst conditions as a partially matching condition set, and provide apartially matching virtual object corresponding to the partiallymatching condition set.
 9. The electronic device of claim 8, theprocessor further configured to associate the at least one virtualobject to a condition set including a stored plurality of conditions.10. The electronic device of claim 9, wherein the processor is furtherconfigured to: compare the plurality of present conditions with thestored plurality of conditions associated with the virtual object; whenthe comparison indicates at least one condition of the plurality ofpresent conditions does not match any of the stored plurality ofconditions, detect whether the non-matching at least one conditionpersists for a predetermined time period; when the non-matching at leastone condition persists for the predetermined time period, register thenon-matching at least one condition as a partially matching condition;and provide the partially matching virtual object corresponding to thepartially matching condition when the plurality of present conditionsmatch the partially matching condition.
 11. The electronic device ofclaim 8, further comprising a display, the processor further configuredto: generate and display the partially matching virtual object as animage on the display.
 12. The electronic device of claim 8, wherein theprocessor is further configured to: process, when the non-matching atleast one condition is an image, so as to display the virtual object ona changed portion of an image displayed on a screen of the electronicdevice.
 13. The electronic device of claim 8, wherein the virtual objectincludes at least one of a still image, a moving image, a sound, asmell, a touch, a temperature, and a position.
 14. The electronic deviceof claim 8, wherein the plurality of present conditions include at leastone of a geographical position of the electronic device, an aimdirection of a camera of the electronic device, an aiming range of thecamera, an aiming target of the camera, an aiming time of the camera, adegree of exposure of the camera, a weather of an environment of theelectronic device, and a user gesture detected by the electronic device.15. A non-transitory computer-readable recording medium in which aprogram for executing the method of claim 1 on a computer is recorded.16. A method for providing a virtual object in an electronic device, themethod comprising: requesting a virtual object by transmitting aplurality of present conditions detected by the electronic device to aserver, the server having a memory for a plurality of condition sets;receiving a virtual object from the server; and generating anddisplaying the received virtual object as an image on a screen of theelectronic device, wherein in response to none of the plurality ofcondition sets having a plurality of conditions matching all of theplurality of present conditions, the received virtual object isidentified as a second virtual object associated with a partiallymatching condition set, the partially matching condition set includingone or more second conditions among the plurality of present conditionswhich coincide with one or more third conditions included in one of theplurality of condition sets, and the one or more second conditions beingregistered by the server as the partially matching condition set inresponse to a coincidence between the one or more second conditions andthe one or more third conditions being repeated a predetermined time.17. The method of claim 16, wherein the virtual object is at least oneof a still image, a moving image, a sound, a smell, a touch, atemperature, and a position.
 18. The method of claim 16, wherein theplurality of present conditions include at least one of a geographicalposition of the electronic device, an aim direction of a camera of theelectronic device, an aiming range of the camera, an aiming target ofthe camera, an aiming time of the camera, a degree of exposure of thecamera, a weather of an environment of the electronic device, and a usergesture detected by the electronic device.
 19. A virtual objectproviding server comprising: a memory; and a processor, configured to:store at least one virtual object for augmented reality associated witha plurality of conditions; receive a request for the virtual objectincluding a first condition set comprising a plurality of presentconditions from an external electronic device; execute a search thememory for the virtual object by comparing each of the plurality ofpresent conditions to each of the plurality of conditions included in aplurality of condition sets, each set associated with at least onevirtual object stored in the memory; when none of the plurality ofcondition sets has the plurality of conditions matching all of theplurality of present conditions, determine one or more first conditionsamong the plurality of present conditions coinciding with one or moresecond conditions included in one of the plurality of condition sets;when the coincidence between the one or more first conditions and theone or more second conditions is repeated a predetermined times,register the one or more first conditions as a partially matchingcondition set; and transmit to the electronic device a partiallymatching virtual object corresponding to the partially matchingcondition set.
 20. The virtual object providing server of claim 19,wherein the processor is further configured to: detect the partiallymatching condition set which has one or more conditions matching atleast one of the plurality of present conditions; and when the partiallymatching condition set is not stored in a database, determine whetherthe coincidence between the one or more first conditions and the one ormore second conditions is repeated a predetermined times.